﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace BeachRunner.BeachRunner
{
	/// <summary>
	/// Der InputController ist eine Wrapper-Klasse für die Controller Klassen 
	/// der Kinect-Steuerung (KinectControl) und der Tastatur-Eingabe (KeyboardController).
	/// <see cref="KinectControl"/>
	/// <see cref="KeyboardController"/>
	/// Autor: OLD (Nick Müller)
	/// </summary>
	public class InputController : PlayerController
	{
		private TouchController touchController;

		/// <summary>
		/// Ermöglicht den Zugriff auf den TouchController (Touch-Eingabe-Steuerung)
		/// </summary>
        public TouchController TouchController
		{
            get { return touchController; }
		}

		/// <summary>
		/// Der InputController ist eine Wrapper-Klasse für die Controller Klasse der Touch-Eingabe (TouchController).
		/// </summary>
		public InputController()
		{
            this.touchController = new TouchController();
		}

        public override bool IsMoovingLeft
		{
			get { 
				return false;
			}
		}

        public override bool IsMoovingRight
		{
            get { return touchController.IsMoovingRight; }
		}

        public override bool IsJumping
		{
            get { return touchController.IsJumping; }
		}

        public override bool IsCrouching
		{
            get
            {
                if (touchController.IsJumping)
                    return false;
                else
                    return touchController.IsCrouching;
            }
		}

        public override bool IsHandUp
        {
            get { return touchController.IsHandUp; }
        }
	}
}
